package com.dhcc.DRGsHosp.web.controller;

import org.openkoala.koala.commons.InvokeResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import com.dhcc.DRGsHosp.facade.OrderFacade;
import com.dhcc.DRGsHosp.facade.dto.OrderDTO;

/**
 * @title		:OrderController.java
 * @description	:
 * @author		:lileizheng
 * @date		:2015年11月12日
 * @version     :1.0
 * @copyright   :DHCC 2013-2014 
 */
@Controller("drgsHospWebController32")
@RequestMapping("/order")
public class OrderController {

	@Autowired
	private OrderFacade orderFacade;
	/**
	 * 
	 * @methodname    :getOrders
	 * @description   : 获取医嘱分析页面相关指标数据
	 * @param         :
	 * @author        :WENYI
	 * @return        :
	 * @date          :2017年6月28日
	 */
	@ResponseBody
	@RequestMapping(value = "getOrders")
	public InvokeResult getOrders(OrderDTO order){
		return orderFacade.getOrderQuotaValue(order);
	}
	/**
	 * 
	 * @methodname    :getResult
	 * @description   : 获取医嘱分析明细页面列表数据 
	 * @param         :
	 * @author        :WENYI
	 * @return        :
	 * @date          :2017年6月28日
	 */
	@ResponseBody
	@RequestMapping(value = "getResult")
	public InvokeResult getResult(OrderDTO order){
		return orderFacade.getOrderAnalysisResult(order);
	}
	/**
	 * 
	 * @methodname    :getResultDetail
	 * @description   : 获取医嘱分析明细页面列表展开三行数据（超标病例、未超标病例、全部病例）
	 * @param         :
	 * @author        :WENYI
	 * @return        :
	 * @date          :2017年6月28日
	 */
	@ResponseBody
	@RequestMapping(value = "getResultDetail")
	public InvokeResult getResultDetail(OrderDTO order){
		return orderFacade.getResultDetail(order);
	}
	/**
	 * 
	 * @methodname    :getOrderAnalysisResultTotal
	 * @description   : 获取医嘱分析明细页面汇总数据
	 * @param         :
	 * @author        :WENYI
	 * @return        :
	 * @date          :2017年6月28日
	 */
	@ResponseBody
	@RequestMapping(value = "getOrderAnalysisResultTotal")
	public InvokeResult getOrderAnalysisResultTotal(OrderDTO order){
		return orderFacade.getOrderAnalysisResultTotal(order);
	}
	/**
	 * 
	 * @methodname    :getADRGBy
	 * @description   : 获取覆盖ADRG
	 * @param         :
	 * @author        :WENYI
	 * @return        :
	 * @date          :2017年6月28日
	 */
	@ResponseBody
	@RequestMapping(value = "getADRGBy")
	public InvokeResult getADRGBy(OrderDTO order){
		return orderFacade.getADRGBy(order);
	}
	/**
	 * 
	 * @methodname    :getDRGsBy
	 * @description   : 获取覆盖DRG
	 * @param         :
	 * @author        :WENYI
	 * @return        :
	 * @date          :2017年6月28日
	 */
	@ResponseBody
	@RequestMapping(value = "getDRGsBy")
	public InvokeResult getDRGsBy(OrderDTO order){
		return orderFacade.getDRGsBy(order);
	}
	/**
	 * 
	 * @methodname    :getCases
	 * @description   : 获取病例
	 * @param         :
	 * @author        :WENYI
	 * @return        :
	 * @date          :2017年6月28日
	 */
	@ResponseBody
	@RequestMapping(value = "getCases")
	public InvokeResult getCases(OrderDTO order){
		return orderFacade.getCases(order);
	}
	/**
	 * 
	 * @methodname    :orderImport
	 * @description   : 医嘱明细数据导入模块
	 * @param         :
	 * @author        :WENYI
	 * @return        :
	 * @date          :2017年6月28日
	 */
	@ResponseBody
	@RequestMapping(value = "orderImport")
	public InvokeResult orderImport(OrderDTO order){
		return orderFacade.orderImport(order);
	}
	/**
	 * 
	 * @methodname    :orderImportByRecordId
	 * @description   : 医嘱补录
	 * @param         :
	 * @author        :WENYI
	 * @return        :
	 * @date          :2017年6月28日
	 */
	@ResponseBody
	@RequestMapping(value = "orderImportByRecordId")
	public InvokeResult orderImportByRecordId(String recordId){
		return orderFacade.orderImportByRecordId(recordId);
	}
}
